﻿// Variables asociadas a los formularios
//var hay_conexion 			= localStorage['hay_conexion'];

var id_opcion				= null;
var id_tipo_ide_inf 		= null;
var nro_ide_inf 			= null;
var placa 					= null;
var serial_carroceria 		= null;
var id_estado_base 			= null;
var id_municipio_base 		= null;
var id_infraccion 			= null;
var nro_boleta 				= null;

var parametro_consulta		= null;
var tipo_consulta			= null;


// onDeviceReady - Phonegap inicializacion
function onDeviceReady() 
{
	alert(666);
	//validar_conexion_internet();
	// Si Hay Conexión con el Servidor
	if ( checkConnection() ) 
	{
		// Consultamos la Lista de los Estados
		combo(url_servicios_sisvox_sismit, 'combo_estado_base', 'id_estado_base', 'id_estado_base', 'nombre_estado_base', 'Estado');			
	}
	alert(123456);
}


// pagebeforecreate
$( '#consultarInfraccion' ).live( 'pagebeforecreate',function(event){
  	alert(7777);
	checkConnection();
});


// pagecreate
$( '#consultarInfraccion' ).live( 'pagecreate',function(event){
	alert(8888);
	//$("#div_tipo_ci").hide();
	$("#div_tipo_placa").hide();
	$("#div_tipo_serial").hide();
	$("#div_municipio_base").hide();
	$("#div_tipo_id_infraccion").hide();
	$("#div_tipo_nro_boleta").hide();
	
	$("#div_infra_san").html("");
	$("#div_datos_inf").hide();
	$("#div_ubica_inf").hide();
	$("#div_infractor").hide();
	$("#div_infracciones").hide();
	$("#div_datos_pag").hide();
	$("#div_datos_veh").hide();
	$("#div_datos_rem").hide();
	$("#div_datos_reg").hide();
	
	
	// Seteamos los Valores correspondientes a la Alcaldia
	cargar_encabezado();
	cargar_pie_pagina();
	
	
	
	// OnClick
	$('#atras, #atras2').click(function()
	{
		location.href="MenuPrincipal.html";
	});
	
	$('#inicio').click(function()
	{
		location.href="MenuPrincipal.html";
	});
	
	
	$('#consultar').click(function()
	{
		var validacion = consultar_infracciones();
		if ( validacion ) {
			
			// Si Hay Conexión con el Servidor -> Llamamos al Servicio
			if ( checkConnection() ) 
			{
				$.mobile.showPageLoadingMsg("a", "Cargando...", false);
				
				// Llamamos al Servicio
				var ajaxManager = $.manageAjax.create('cola_ajax',{manageType: 'queue', maxReq: 0, blockSameRequest:true});
				
				ajaxManager.add({
					
					type: "POST",
					url:  url_servicios_sisvox_sismit,
					data: "servicio="+tipo_consulta+"&"+
						  "parametro_consulta="+parametro_consulta+"&"+
						  "device_uuid="+device.uuid+"&"+
						  "device_platform="+device.platform,
					dataType: 'xml',
					success: function(response_xml)
					{
						$xml_resultado = $(response_xml);
						
						$status = $xml_resultado.find("status");
						
						$.mobile.hidePageLoadingMsg();
						
						if($status.length)
						{
							$status.each(function()
							{
								if($(this).text()=="S")
								{
									
								}
								else if($(this).text()=="N")
								{
									
								}
							});
							
							// Si el Tipo de Consulta es sobre un Ciudadano o un Vehículo
							if ( tipo_consulta == "sismit_infraccion_base_ci_dm" || tipo_consulta == "sismit_infraccion_base_placa_dm" || tipo_consulta == "sismit_infraccion_base_serial_dm" ) {
								
								$valido = $xml_resultado.find("valido");
								
								if($valido.length)
								{
									if ( $valido.text() == "NO" )
									{
										infracciones = "";
										$infraccion = $xml_resultado.find("infraccion");
										if($infraccion.length)
										{
											$infraccion.each(function()
											{
												infracciones += "ID INFRACCIÓN: " + $(this).find("id_infraccion").text() + "\n";
												infracciones += "ESTADO: " + $(this).find("nombre_estado_base").text() + "\n";
												infracciones += "MUNICIPIO: " + $(this).find("nombre_municipio_base").text() + "\n";
												infracciones += "FECHA: " + $(this).find("fecha").text() + "\n";
												infracciones += "IMPORTE: " + $(this).find("importe").text() + " BsF.\n\n";
											});
										} 
										
										navigator.notification.alert("ATENCIÓN\nSe encontraron las siguientes Infracciones Municipales:\n\n" + infracciones, null, acronimo_sistema, "Aceptar");
										
										navigator.notification.beep(1);
									} 
									else 
									{
										if ( tipo_consulta == "sismit_infraccion_base_ci_dm" ) {
											navigator.notification.alert("No se encontro Infracciones Municipales con la Identificación indicada.", null, acronimo_sistema, "Aceptar");
										} else if ( tipo_consulta == "sismit_infraccion_base_placa_dm" ) {
											navigator.notification.alert("No se encontro Infracciones Municipales con la Placa indicada.", null, acronimo_sistema, "Aceptar");
										} else if ( tipo_consulta == "sismit_infraccion_base_serial_dm" ) {
											navigator.notification.alert("No se encontro Infracciones Municipales con el Serial de Carrocería indicado.", null, acronimo_sistema, "Aceptar");
										}
									}
								}                  		
								else
								{
									navigator.notification.alert("No hay Descripción de las Infracciones Municipales.", null, acronimo_sistema, "Aceptar");
								}
							}
							
							// Si el Tipo de Consulta es sobre una Infracción
							else if ( tipo_consulta == "sismit_infraccion_base_id_infraccion_dm" || tipo_consulta == "sismit_infraccion_base_nro_boleta_dm" )
							{
								$datos_infraccion = $xml_resultado.find("datos_infraccion");
								
								if($datos_infraccion.length)
								{
									if ( $datos_infraccion.text() != "VACIO" )
									{
										// Datos de la Infracción
										$('#id_infraccion_c').val( $datos_infraccion.find("id_infraccion").text() );
										if ( $datos_infraccion.find("nro_boleta").text() != "" ) 
										{
											$('#nro_boleta_c').val("");
											$('#nro_boleta_c').val( $datos_infraccion.find("nro_boleta").text() );
											$("#div_nro_boleta").show();
										}
										else
										{
											$('#nro_boleta_c').val("");
											$("#div_nro_boleta").hide();	
										}
										$('#fecha').val( $datos_infraccion.find("fecha").text() );
										$('#hora').val( $datos_infraccion.find("hora").text() );
										$('#nombre_motivo').val( $datos_infraccion.find("nombre_motivo").text() );
										$('#nombre_status').val( $datos_infraccion.find("nombre_status").text() );
										$('#observaciones').val( $datos_infraccion.find("observaciones").text() );
										$("#div_datos_inf").show();
										
										// Datos de la Ubicación
										$('#nombre_estado').val( $datos_infraccion.find("nombre_estado").text() );
										$('#nombre_municipio').val( $datos_infraccion.find("nombre_municipio").text() );
										if ( $datos_infraccion.find("parroquia").text() != "" )
										{
											$('#nombre_parroquia').val("");
											$('#nombre_parroquia').val( $datos_infraccion.find("parroquia").text() );
											$("#div_parroquia").show();
										}
										else
										{
											$('#nombre_parroquia').val("");
											$("#div_parroquia").hide();	
										}
										if ( $datos_infraccion.find("sector").text() != "" )
										{
											$('#nombre_sector').val("");
											$('#nombre_sector').val( $datos_infraccion.find("sector").text() );
											$("#div_sector").show();
										}
										else
										{
											$('#nombre_sector').val("");
											$("#div_sector").hide();	
										}
										$('#nombre_tipo_via').val( $datos_infraccion.find("nombre_tipo_via").text() );
										$('#referencia').val( $datos_infraccion.find("referencia").text() );
										$("#div_ubica_inf").show();
										
										
										// Datos del Infractor
										$('#identificacion_infractor').val( $datos_infraccion.find("id_tipo_ide_inf").text() + "-" + $datos_infraccion.find("nro_ide_inf").text() );
										
										$('#nombre_infractor').val( $datos_infraccion.find("nombre_infractor").text() );
										$('#sexo').val( $datos_infraccion.find("sexo").text() );
										$('#edad').val( $datos_infraccion.find("edad").text() + " AÑOS" );
										
										$('#grado_lic').val( $datos_infraccion.find("grado_lic").text() + "º GRADO" );
										$('#nombre_condi_per').val( $datos_infraccion.find("nombre_condi_per").text() );
										$("#div_infractor").show();
										
										
										// Infracciones Sancionadas
										$infraccion = $datos_infraccion.find("infraccion_san");
										
										infra_san = "";
										if ( $infraccion.length )
										{
											div_lista_infra = "<table width='100%'><tbody><tr><td align='center' colspan='7'><b>Lista de Infracciones Identificadas</b></td></tr></tbody></table><table width='100%' class='fondo3'><tbody><tr><td align='center' width='15%' class='fondo2_2'>ART.</td><td align='center' width='15%' class='fondo2_2'>NUM.</td><td align='center' width='12%' class='fondo2_2'>LIT.</td><td align='center' width='20%' class='fondo2_2'>OFICIO</td><td align='center' width='38%' class='fondo2_2'>IMPORTE</td></tr></tbody></table>";
											
											$infraccion.each(function()
											{
												if ( parseInt($(this).find("reincidencia").text()) > 0 ) {
													estilo = "texto_rojo";
												} else {
													estilo = "";
												}
												
												div_lista_infra = div_lista_infra + "<table width='100%'><tbody><tr><td align='center' width='15%' class='" + estilo + "'>" + $(this).find("cod_articulo").text() + "</td><td align='center' width='15%' class='" + estilo + "'>" + $(this).find("cod_numeral").text() + "</td><td align='center' width='12%' class='" + estilo + "'>" + $(this).find("cod_literal").text() + "</td><td align='center' width='20%' class='" + estilo + "'>" + ($(this).find("o_juridico").text()).substr( 0, 3 ) + "</td><td align='right' width='38%' class='" + estilo + "'>" + $(this).find("importe").text() + " BsF.</td></tr></tbody></table>";
												
											});
											$('#div_infra_san').html(div_lista_infra);
											
											$('#importe').val( $datos_infraccion.find("importe_total").text() + " BsF." );
											$("#div_infracciones").show();
										}
										else
										{
											$('#importe').val( "" );
											$("#div_infracciones").hide();
										}
										
										// Datos del Pago
										login_pago = $datos_infraccion.find("login_pago").text();
										if ( login_pago != "" )
										{
											$('#login_pago').val( $datos_infraccion.find("login_pago").text() );
											$('#fecha_pago').val( $datos_infraccion.find("fecha_pago").text() );
											
											$("#div_datos_pag").show();
										}
										else
										{
											$('#nombre_usuario_pag').val( "" );
											$('#fecha_pago').val( "" );
											
											$("#div_datos_pag").hide();	
										}
										
										
										// Datos del Vehículo
										vehiculo 		= $datos_infraccion.find("existe_vehiculo").text();
										if ( vehiculo == "SI" ) 
										{
											$('#placa_c').val( $datos_infraccion.find("placa").text() );
											$('#serial_carroceria_c').val( $datos_infraccion.find("serial_carroceria").text() );
											$('#marca').val( $datos_infraccion.find("marca").text() );
											$('#modelo').val( $datos_infraccion.find("modelo").text() );
											$('#anyo').val( $datos_infraccion.find("anyo").text() );
											$('#color').val( $datos_infraccion.find("color").text() );
											$('#tipo').val( $datos_infraccion.find("tipo").text() );
											$('#uso').val( $datos_infraccion.find("uso").text() );
											
											$("#div_datos_veh").show();
											
											// Datos del Remolque
											remolque 		= $datos_infraccion.find("existe_remolque").text();
											if ( remolque == "SI" ) 
											{
												$('#identificacion_operador').val( $datos_infraccion.find("id_tipo_ide_ope").text() + "-" + $xml_resultado.find("nro_ide_ope").text() );
												$('#nombre_operador').val( $datos_infraccion.find("nombre_operador").text() );
												$('#placa_grua').val( $datos_infraccion.find("placa_grua").text() );
												$('#nombre_estacionamiento').val( $datos_infraccion.find("estacionamiento").text() );
												
												$("#div_datos_rem").show();
											} 
											else 
											{
												$('#identificacion_operador').val("");
												$('#nombre_operador').val("");
												$('#placa_grua').val("");
												$('#nombre_estacionamiento').val("");
												
												$("#div_datos_rem").hide();
											}
										} 
										else 
										{
											$('#placa').val("");
											$('#serial_carroceria').val("");
											$('#marca').val("");
											$('#modelo').val("");
											$('#anyo').val("");
											$('#color').val("");
											$('#tipo').val("");
											$('#uso').val("");
											
											$("#div_datos_veh").hide();
										}
										
										// Datos del Registro
										$('#login_registro').val( $datos_infraccion.find("login_registro").text() );
										$('#fecha_registro').val( $datos_infraccion.find("fecha_registro").text() );
										$("#div_datos_reg").show(); 
										
										navigator.notification.alert("ATENCIÓN\nInformación Cargada con Exito.", null, acronimo_sistema, "Aceptar");
										
										navigator.notification.beep(1);
									} 
									else 
									{
										limpiar_datos_infraccion();
										
										if ( tipo_consulta == "sismit_infraccion_base_id_infraccion_dm" ) {
											navigator.notification.alert("No se encontro una Infracción Municipal con el ID indicado.", null, acronimo_sistema, "Aceptar");
										} else if ( tipo_consulta == "sismit_infraccion_base_nro_boleta_dm" ) {
											navigator.notification.alert("No se encontro una Infracción Municipal con el Nro. de Boleta indicado.", null, acronimo_sistema, "Aceptar");
										}
									}
								}                  		
								else
								{
									navigator.notification.alert("No hay Descripción de la Infracción Municipal.", null, acronimo_sistema, "Aceptar");
								}
							}
						}
						else
						{
							navigator.notification.alert("No hay Respuesta del Servicio.", null, acronimo_sistema, "Aceptar");
						}
					}
				});
			
			// Si no Hay Conexión con el Servidor
			} else {
				
				navigator.notification.alert("ATENCIÓN: No se pudo Consultar las Infracciones Municipales debido a que actualmente no hay Conexión.", null, acronimo_sistema, "Aceptar");
			}
		} else {
			// DATA DE ENTRADA NO VALIDA
		}
	});
});


// pageinit
$('#consultarInfraccion').live('pageinit',function(event) {
	
	// OnChange Tipo de Consulta
	$('#id_tipo_consulta').change(function()
	{
		$("#div_tipo_ci").hide();
		$("#div_tipo_placa").hide();
		$("#div_tipo_serial").hide();
		$("#div_municipio_base").hide();
		$("#div_tipo_id_infraccion").hide();
		$("#div_tipo_nro_boleta").hide();
		
		$('#id_municipio_base').find("option").remove();
		$('#id_municipio_base').append('<option value="">SELECCIONE</option>');
		$('#id_municipio_base').selectmenu("refresh",true);
		
		limpiar_datos_infraccion();
		
		if( $('#id_tipo_consulta').val() == "ci" )
		{
			$("#div_tipo_ci").show();
		}
		else if( $('#id_tipo_consulta').val() == "placa" )
		{
			$("#div_tipo_placa").show();
		}
		else if( $('#id_tipo_consulta').val() == "serial" )
		{
			$("#div_tipo_serial").show();
		}
		else if( $('#id_tipo_consulta').val() == "id_infraccion" )
		{
			$('#id_estado_base').val("");
			$('#id_estado_base').selectmenu("refresh",true);
			$("#div_municipio_base").show();
			$("#div_tipo_id_infraccion").show();
		}
		else if( $('#id_tipo_consulta').val() == "nro_boleta" )
		{
			$('#id_estado_base').val("");
			$('#id_estado_base').selectmenu("refresh",true);
			$("#div_municipio_base").show();
			$("#div_tipo_nro_boleta").show();
		}
	});
	
	
	// OnChange Estado
	$('#id_estado_base').change(function()
	{
		if( $('#id_estado_base').val() != "" )
		{
			$('#id_municipio_base').find("option").remove();
			$('#id_municipio_base').append('<option value="">SELECCIONE</option>');
			$('#id_municipio_base').selectmenu("refresh",true);
			var id_estado_base = $('#id_estado_base').val();
			
			if ( checkConnection() )
			{
				combo_dependiente(url_servicios_sisvox_sismit, "combo_municipio_base", "id_municipio_base", "id_municipio_base", "nombre_municipio_base", "Municipio", id_estado_base);
			}
		}
	});
});


// pageshow
$( '#consultarInfraccion' ).live( 'pageshow',function(event){
	
	
	
});


// =================================================================================================================
// =================================== Consultar las Infracciones Municipales ======================================
// =================================================================================================================

function consultar_infracciones() {
    
	id_opcion				= $('#id_opcion').val();
	
	id_tipo_consulta 		= $('#id_tipo_consulta').val();
	id_tipo_ide_inf 		= $('#id_tipo_ide_inf').val();
	nro_ide_inf 			= $('#nro_ide_inf').val();
	placa 					= $('#placa').val();
	serial_carroceria 		= $('#serial_carroceria').val();
	id_estado_base 			= $('#id_estado_base').val();
	id_municipio_base 		= $('#id_municipio_base').val();
	id_infraccion 			= $('#id_infraccion').val();
	nro_boleta 				= $('#nro_boleta').val();
	
    if ( id_tipo_consulta == "" ) {
        navigator.notification.alert("Debe indicar el Tipo de Consulta que desea realizar", null, acronimo_sistema, "Aceptar");							return false;
    } else if ( id_tipo_consulta == "ci" && id_tipo_ide_inf == "" ) {
        navigator.notification.alert("Debe indicar la Nacionalidad del Ciudadano que desea Consultar", null, acronimo_sistema, "Aceptar");				return false;
	} else if ( id_tipo_consulta == "ci" && nro_ide_inf == "" ) {
        navigator.notification.alert("Debe indicar el Número de Cédula del Ciudadano que desea Consultar", null, acronimo_sistema, "Aceptar");			return false;
    } else if ( id_tipo_consulta == "ci" && !IsNumeric(nro_ide_inf) ) {
        navigator.notification.alert("El Número de Cédula del Ciudadano a Consultar debe ser un Número", null, acronimo_sistema, "Aceptar");			return false;
	} else if ( id_tipo_consulta == "placa" && placa == "" ) {
        navigator.notification.alert("Debe indicar la Placa del Vehículo que desea Consultar", null, acronimo_sistema, "Aceptar");						return false;
	} else if ( id_tipo_consulta == "serial" && serial_carroceria == "" ) {
        navigator.notification.alert("Debe indicar el Serial de Carrocería del Vehículo que desea Consultar", null, acronimo_sistema, "Aceptar");		return false;
	} else if ( ( id_tipo_consulta == "id_infraccion" || id_tipo_consulta == "nro_boleta" ) && id_estado_base == "" ) {
        navigator.notification.alert("Debe indicar el Estado donde ocurrio la Infracción", null, acronimo_sistema, "Aceptar");							return false;
	} else if ( ( id_tipo_consulta == "id_infraccion" || id_tipo_consulta == "nro_boleta" ) && id_municipio_base == "" ) {
        navigator.notification.alert("Debe indicar el Municipio donde ocurrio la Infracción", null, acronimo_sistema, "Aceptar");						return false;
	} else if ( id_tipo_consulta == "id_infraccion" && id_infraccion == "" ) {
        navigator.notification.alert("Debe indicar el ID de la Infracción que desea Consultar", null, acronimo_sistema, "Aceptar");						return false;
	} else if ( id_tipo_consulta == "nro_boleta" && nro_boleta == "" ) {
        navigator.notification.alert("Debe indicar el Nro. de Boleta de la Infracción que desea Consultar", null, acronimo_sistema, "Aceptar");			return false;
		
    } else {
        // navigator.notification.confirm("ATENCIÓN: ¿Esta seguro de que desea Consultar las Infracciones Municipales?", null, acronimo_sistema, "Aceptar,Cancelar")
		if ( window.confirm ("ATENCIÓN: ¿Esta seguro de que desea Consultar las Infracciones Municipales?") ) {
			
			if ( id_tipo_consulta == "ci" ) {
				tipo_consulta 		= "sismit_infraccion_base_ci_dm";
				parametro_consulta	= id_tipo_ide_inf + ";" + nro_ide_inf;
			} else if ( id_tipo_consulta == "placa" ) {
				tipo_consulta 		= "sismit_infraccion_base_placa_dm";
				parametro_consulta	= placa;
			} else if ( id_tipo_consulta == "serial" ) {
				tipo_consulta 		= "sismit_infraccion_base_serial_dm";
				parametro_consulta	= serial_carroceria;
			} else if ( id_tipo_consulta == "id_infraccion" ) {
				tipo_consulta 		= "sismit_infraccion_base_id_infraccion_dm";
				parametro_consulta	= id_infraccion + ";" + id_municipio_base;
			} else if ( id_tipo_consulta == "nro_boleta" ) {
				tipo_consulta 		= "sismit_infraccion_base_nro_boleta_dm";
				parametro_consulta	= nro_boleta + ";" + id_municipio_base;
			}
			
            return true;
        } else {
            navigator.notification.alert("La Operación de Consultar las Infracciones Municipales ha sido cancelada.!", null, acronimo_sistema, "Aceptar");
			return false;
        }
    }
}


// =================================================================================================================
// ================================ Limpiar los Datos de una Infracción Municipal ==================================
// =================================================================================================================

function limpiar_datos_infraccion() {
    
	$("#div_infra_san").html("");
	$("#div_datos_inf").hide();
	$("#div_ubica_inf").hide();
	$("#div_infractor").hide();
	$("#div_infracciones").hide();
	$("#div_datos_pag").hide();
	$("#div_datos_veh").hide();
	$("#div_datos_rem").hide();
	$("#div_datos_reg").hide();
	
	$('#id_infraccion_c').val("");
	$('#nro_boleta_c').val("");
	$("#div_nro_boleta").hide();	
	$('#fecha').val("");
	$('#hora').val("");
	$('#nombre_status').val("");
	$('#observaciones').val("");
	
	$('#nombre_estado').val("");
	$('#nombre_municipio').val("");
	$('#nombre_parroquia').val("");
	$("#div_parroquia").hide();	
	$('#nombre_sector').val("");
	$("#div_sector").hide();
	$('#nombre_tipo_via').val("");
	$('#referencia').val("");
	
	$('#identificacion_infractor').val("");
	$('#nombre_infractor').val("");
	$('#sexo').val("");
	$('#edad').val("");
	$('#grado_lic').val("");
	$('#nombre_condi_per').val("");
	
	$('#div_infra_san').html("");
	$('#importe').val( "" );
	
	$('#login_pago').val("");
	$('#fecha_pago').val("");
	
	$('#placa_c').val("");
	$('#serial_carroceria_c').val("");
	$('#marca').val("");
	$('#modelo').val("");
	$('#anyo').val("");
	$('#color').val("");
	$('#tipo').val("");
	$('#uso').val("");
	
	$('#identificacion_operador').val("");
	$('#nombre_operador').val("");
	$('#placa_grua').val("");
	$('#nombre_estacionamiento').val("");
	
	$('#login_registro').val("");
	$('#fecha_registro').val("");
}